"""
面向对象编程的三大特征：封装、继承、多态

- 多态：是指同一个方法调用由于对象不同会产生不同的行为
- 封装：是指对象的属性和实现细节，只对外提供必要的方法，通过私有属性、私有方法的方式实现封装
- 继承：继承可以让子类具有父类的特性，提高了代码的重用性
"""

# 继承
## 私有属性
## 私有方法
class Dog:
    # 设置私有属性
    __legs = 4

    def get_legs(self):
        print(f'狗有{self.__legs}条腿')

    # __fun 代表私有方法
    def __print_legs(self):
        print(f'狗有{self.__legs}条腿')

    def p_leg(self):
        self.__print_legs()

    # set和get方法
    def get_legs(self):
        return self.__legs

    def set_legs(self,legs):
        self.__legs = legs


dog=Dog()
dog.get_legs()
dog.p_leg()
dog.set_legs(16)
dog.get_legs()

